package ahut2020.exp06;

import java.util.Arrays;

//1~9组成三个3位的平方数 将1、2、3、4、5、6、7、8、9九个数字分成三组，每个数字只能用一次，即每组三个数不允许有重复数字，也不许同其它组的三个数字重复，要求每组中的三位数都组成一个平方数。
public class P04TreeSquareNumbers {
    public static void main(String[] args) {
        int left = (int) Math.sqrt(123);
        int right = (int) Math.sqrt(987);
        for (int x = left; x < right; x++)
            for (int y = x + 1; y < right; y++)
                for (int z = y + 1; z <= right; ++z) {
                    int a = x * x;
                    int b = y * y;
                    int c = z * z;
                    char[] chars = String.format("%d%d%d", a, b, c).toCharArray();
                    Arrays.sort(chars);
                    if (new String(chars).equals("123456789")) {
                        System.out.println(String.format("%d %d %d", a, b, c));
                    }
                }
    }
}
